package com.qk.management.mapper;

import com.qk.entity.Dept;
import org.apache.ibatis.annotations.*;

import java.util.List;

/**
 * @author Enid
 * @date 2025/9/29 10:33
 * @description 数据层接口
 *
 */
@Mapper
public interface DeptMapper {

    /**
     * 插入部门信息
     */
    @Insert("insert into dept(name,status,create_time,update_time) values(#{name},#{status},#{createTime},#{updateTime})")
    void insert(Dept dept);

    /**
     * 返回符合条件的部门数量
     */
    Integer getTotal(@Param("name") String name,@Param("status")Integer status);
    /**
     * 返回符合条件的部门列表
     */
    List<Dept> getRows(@Param("name") String name,@Param("status")Integer status,
                       @Param("offset") Integer offset, @Param("pageSize") Integer pageSize);

    /**
     * 根据id查询部门
     */
    @Select("select * from dept where id = #{id}")
    Dept selectById(Integer id);

    @Update("update dept set name = #{name},status = #{status},update_time = #{updateTime} where id = #{id}")
    void updateDept(Dept dept);

    @Delete("delete from dept where id = #{id}")
    void deleteDept(Integer id);

    @Select("select * from dept")
    List<Dept> selectAll();
}
